今天我們會使用 MLDM + MLDE 來進行貓狗圖片分類的卷積神經網路(Convolutional Neural Network,CNN)模型訓練,並進行以下操作:
打開終端機,執行以下指令來建立專案:
(dogs-vs-cats) aif@aif % pachctl create project dogs-vs-cats
(dogs-vs-cats) aif@aif % pachctl config update context --project dogs-vs-cats
到 MLDM console UI 確認一下 Project 「dogs-vs-cats」 是否建立成功:
接著建立存放訓練與測試資料的 Repository:
(dogs-vs-cats) aif@aif % pachctl create repo train
(dogs-vs-cats) aif@aif % pachctl create repo test
完成後,進到 Project dogs-vs-cats 的 DAG,就能看到兩個 Repository 已建立好。
在 MLDM 的最後一個操作,就是把我們的訓練、測試資料各自上傳到負責存放的 Repository,由於這份資料集的樣本數高達 25,000,在操作時可刪除部分樣本,只保留少部分,以利加快執行:
(mldm) aif@aif % pachctl put file -c -r train@master -f ./dogs-vs-cats/train
dogs-vs-cats/train/cat.0.jpg 12.41 KB / 12.41 KB [=====================================] 0s 0.00 b/s
dogs-vs-cats/train/cat.1.jpg 16.88 KB / 16.88 KB [=====================================] 0s 0.00 b/s
dogs-vs-cats/train/cat.10.jpg 34.31 KB / 34.31 KB [====================================] 0s 0.00 b/s
...
(mldm) aif@aif % pachctl put file -c -r test@master -f ./dogs-vs-cats/test
dogs-vs-cats/test/10.jpg 22.19 KB / 22.19 KB [==============================================================] 0s 0.00 b/s
dogs-vs-cats/test/11.jpg 14.49 KB / 14.49 KB [==============================================================] 0s 0.00 b/s
dogs-vs-cats/test/12.jpg 31.15 KB / 31.15 KB [==============================================================] 0s 0.00 b/s
...
因為訓練資料包含 25,000 張圖片,逐張上傳可能會執行很久,因此在 MLDM put file 指令加上了 -c,讓 MLDM 在上傳時將檔案壓縮,當檔案數量多的情況下可以節省時間。上傳完成後同樣可以到 Repository 觀察 Commit 是否有剛才上傳的紀錄:
完整實作搶先看 >> https://bit.ly/4hEjuWY
Line 官方帳號,看最新技術文章:https://user137910.pse.is/aif2024ironman
參考資料
用 MLDE 平台實作 PyTorch 卷積神經網路模型 /hpe-mlde-unboxing1/
Pachyderm Docs/Home/Latest/Integrate/Determined https://docs.pachyderm.com/latest/integrate/determined/
(本篇文章由人工智慧科技基金會、HPE 與 AMD 共同合作。)